<?php namespace Common\Model;
use Hdphp\Model\Model;

class Brand extends Model{
	protected $table='brand';
//	自动验证
	protected $validate=array(
		array('bname','required','品牌名称必须填',3,3),	
	);
	//自动完成
	protected $auto=array(
		array('logo','logo','method',3,3),
	);
	//声明自动完成的方法
	protected function logo(){
		
		//判断是不是有上传
		if(isset($_FILES['logo'])&&$_FILES['logo']['error']!=4){
		//执行上传方法并且返回上传路径
			$file=Upload::type('jpg,png,gif')->path('Upload/logo')->size(200000000)->make();			
//			判断是否是路径进行缩略处理
			
			if($file){
//				将上传的路径重新组合含有_logo.形式的后缀的路径
				$newpath=str_replace('.'.$file[0]['ext'], '_logo.'.$file[0]['ext'], $file[0]['path']);
				//生成缩略图并且返回路径
				$logothumb=Image::thumb($file[0]['path'],$newpath,200,200,2);
				//删除原图只留缩略图
				unlink($file[0]['path']);
//				返回地址
				return $logothumb;
			}
				
		}
//		判断是不是有logo
		if($logo=Q('post.logo')){
			return $logo;
		}
		return '';
	}
	
	//自定义一个store方法
	public function store(){
		//		判断是否符合自动验证
		if(!$this->create())return false;
//		判断上传有没有问题
		if($error=Upload::geterror()){
			$this->error=$error;
			return false;			
		}
	//如果上两步验证都通过的话就执行对数据库的添加	
		$this->add();	
	   return true;
	}
	
	//修改
	public function edit(){
//	   自动验证
		if(!$this->create()) return FALSE;
		if($error=Upload::geterror()){
			$this->error=$error;
			return false;
		}		
		if(isset($_FILES['logo'])){
			$logo=$this->where('bid='.Q('get.bid',0,'intval'))->pluck('logo');
			if($logo)unlink($logo);
			
		}
		$this->data['bid']=Q('get.bid',0,'intval');	
		$this->save();
		return true;
	}
	
}
?>